package ace.module.oss.core.impl.manager;

import ace.cmp.data.spring.data.jdbc.querydsl.rsql.core.manager.DtoManager;
import ace.module.oss.api.model.dto.OssApplicationConfigDto;
import ace.module.oss.core.impl.dao.entity.OssApplicationConfig;

/**
 * oss应用配置 spring data jdbc querydsl rsql manager.
 *
 * @author Caspar
 */
public interface OssApplicationConfigManager extends DtoManager<OssApplicationConfig, Long, OssApplicationConfigDto> {

  OssApplicationConfig getByOssAppIdAndKeyAndDeleteFlagIsFalse(Long ossAppId, String key);

  OssApplicationConfig getOrSystemDefaultByOssAppIdAndKeyAndDeleteFlagIsFalse(
      Long ossAppId, String key);

  OssApplicationConfig getSystemDefault(Long ossAppId, String key);
}
